package com.ease.platform.access.service.impl.authorization;

import java.util.List;

import com.ease.common.vo.Ordering;
import com.ease.common.vo.Pagination;
import com.ease.model.Model;
import com.ease.model.criteria.CriteriaParameter;
import com.ease.platform.access.service.AbstractParameterizedBeanJdbcTemplateAccessService;
import com.ease.platform.authorization.callback.AuthorizationCallback;
import com.ease.platform.common.service.impl.authorization.AbstractAuthorizationProxyServiceImpl;

/**
 * 
 * @author nathanleewei
 * 
 */
public abstract class AbstractParameterizedBeanJdbcTemplateAccessAuthorizationProxyServiceImpl<T extends Model, S extends AbstractParameterizedBeanJdbcTemplateAccessService<T>> extends
		AbstractAuthorizationProxyServiceImpl<AbstractParameterizedBeanJdbcTemplateAccessService<T>> implements AbstractParameterizedBeanJdbcTemplateAccessService<T> {

	public String getNamespace() {
		this.throwUnaccessibleException();
		return null;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * com.ease.platform.access.service.AbstractParameterizedBeanJdbcTemplateAccessService#find(com.ease.model.criteria
	 * .CriteriaParameter)
	 */
	@Override
	public List<T> find(CriteriaParameter criteriaParameter) {
		return this.invoke(new AuthorizationCallback() {

		}).find(criteriaParameter);
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see com.ease.platform.access.service.AbstractParameterizedBeanJdbcTemplateAccessService#findAll()
	 */
	@Override
	public List<T> findAll() {
		// TODO Auto-generated method stub
		return null;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * com.ease.platform.access.service.AbstractParameterizedBeanJdbcTemplateAccessService#findAll(com.ease.common.vo
	 * .Ordering)
	 */
	@Override
	public List<T> findAll(Ordering ordering) {
		// TODO Auto-generated method stub
		return null;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * com.ease.platform.access.service.AbstractParameterizedBeanJdbcTemplateAccessService#findPagination(com.ease.model
	 * .criteria.CriteriaParameter, com.ease.common.vo.Pagination)
	 */
	@Override
	public Pagination<T> findPagination(CriteriaParameter criteriaParameter, Pagination<T> pagination) {
		// TODO Auto-generated method stub
		return null;
	}

}
